Robotic end-effectors act directly on an object in the performance of a work task. Example end-effectors include robotic grippers or hands. Such end-effector may be used, by way of example, to grasp and manipulate an object in a given task space. The design complexity of a typical end-effector may be relatively simple, such as in the case of a two-fingered parallel gripper, or highly advanced such as with a five-fingered dexterous anthropomorphic robotic hand. In between these extremes of complexity lie other gripper designs such as three-fingered or four-fingered hands, as well as a host of other end-effector designs.
Tasks associated with robotic grippers vary with the gripper design, the geometrical complexity of the object being grasped, and the presence of obstacles or other environmental constraints. Grasp planning for a given grasp pose conventionally involves extensive programming of a controller with predefined end-effector path trajectories. Within these predefined trajectories, end-effector position and velocity may be continuously measured and controlled in a closed-loop as the end-effector moves toward a specified goal position. Alternatively, in a process referred to as demonstrated teaching, a human operator may manually backdrive and/or automatically command a demonstrated movement and grasp pose to the robot by physically moving the end-effector through a predetermined movement.